package com.ruoyi.biz.domain;

import com.alibaba.excel.annotation.ExcelProperty;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 通行记录对象 traffic_record
 *
 * @author ruoyi
 * @date 2024-05-07
 */
@TableName("traffic_record")
public class TrafficRecord extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 自动增加的唯一ID */
    @TableId(value = "id",type = IdType.AUTO)
    private Long id;

    /** 记录日期 */


    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date recordDate;

    /** 现金收入 */
    @Excel(name = "现金")
    private BigDecimal cash;

    /** 鲁通卡收入 */
    @Excel(name = "鲁通卡")
    private BigDecimal lutongCard;

    /** 银联收入 */
    @Excel(name = "银联")
    private BigDecimal unionpay;

    /** 手撕票收入 */
    @Excel(name = "手撕票")
    private BigDecimal handTearTicket;

    /** 收入总计 */
    @Excel(name = "合计")
    private BigDecimal totalRevenue;

    /** 卡赔收入 */
    @Excel(name = "卡赔")
    private BigDecimal cardCompensation;

    /** 入口客车数量 */
    @Excel(name = "入口客车")
    private Long entrancePassenger;

    /** 入口货车数量 */
    @Excel(name = "入口货车")
    private Long entranceFreight;

    /** 入口纸卡数量 */
    @Excel(name = "入口纸卡")
    private Long entrancePaperCard;

    /** 入口节假日免费车数量 */
    @Excel(name = "入口节假日免费车")
    private Long entranceHolidayFree;

    /** 入口车流总计 */
    @Excel(name = "入口小计")
    private Long entranceSubtotal;

    /** 入口CPC车流 */
    @Excel(name = "入口CPC车流")
    private Long entranceCpc;

    /** 入口CPC车流比例 */
    @Excel(name = "入口占总车流比率")
    private BigDecimal entranceCpcRatio;

    /** 入口ETC车流 */
    @Excel(name = "入口ETC车流")
    private Long entranceEtc;

    /** 入口ETC车流比例 */
    @Excel(name = "入口ETC车流比例")
    private BigDecimal entranceEtcRatio;

    /** 出口客车数量 */
    @Excel(name = "出口客车")
    private Long exitPassenger;

    /** 出口货车数量 */
    @Excel(name = "出口货车")
    private Long exitFreight;

    /** 出口纸卡数量 */
    @Excel(name = "出口纸卡")
    private Long exitPaperCard;

    /** 出口节假日免费车数量 */
    @Excel(name = "出口节假日免费车")
    private Long exitHolidayFree;

    /** 出口车流总计 */
    @Excel(name = "出口小计")
    private Long exitSubtotal;

    /** 出口CPC车流 */
    @Excel(name = "出口CPC车流")
    private Long exitCpc;

    /** 出口CPC车流比例 */
    @Excel(name = "出口占总车流比率")
    private BigDecimal exitCpcRatio;

    /** 出口ETC车流 */
    @Excel(name = "出口ETC车流")
    private Long exitEtc;

    /** 出口ETC车流比例 */
    @Excel(name = "出口占总车流比率")
    private BigDecimal exitEtcRatio;

    /** 出入口合计车流量 */
    @Excel(name = "出入口合计车流")
    private Long totalTrafficFlow;

    /** 绿通车数量 */
    @Excel(name = "绿通车数量")
    private Long greenChannelCount;

    /** 绿通车金额 */
    @Excel(name = "绿通车金额")
    private BigDecimal greenChannelAmount;

    /** 备注 */
    @Excel(name = "备注")
    private String note;

    /** 导入时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "导入时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date importTime;

    public void setId(Long id)
    {
        this.id = id;
    }

    public Long getId()
    {
        return id;
    }
    public void setRecordDate(Date recordDate)
    {
        this.recordDate = recordDate;
    }

    public Date getRecordDate()
    {
        return recordDate;
    }
    public void setCash(BigDecimal cash)
    {
        this.cash = cash;
    }

    public BigDecimal getCash()
    {
        return cash;
    }
    public void setLutongCard(BigDecimal lutongCard)
    {
        this.lutongCard = lutongCard;
    }

    public BigDecimal getLutongCard()
    {
        return lutongCard;
    }
    public void setUnionpay(BigDecimal unionpay)
    {
        this.unionpay = unionpay;
    }

    public BigDecimal getUnionpay()
    {
        return unionpay;
    }
    public void setHandTearTicket(BigDecimal handTearTicket)
    {
        this.handTearTicket = handTearTicket;
    }

    public BigDecimal getHandTearTicket()
    {
        return handTearTicket;
    }
    public void setTotalRevenue(BigDecimal totalRevenue)
    {
        this.totalRevenue = totalRevenue;
    }

    public BigDecimal getTotalRevenue()
    {
        return totalRevenue;
    }
    public void setCardCompensation(BigDecimal cardCompensation)
    {
        this.cardCompensation = cardCompensation;
    }

    public BigDecimal getCardCompensation()
    {
        return cardCompensation;
    }
    public void setEntrancePassenger(Long entrancePassenger)
    {
        this.entrancePassenger = entrancePassenger;
    }

    public Long getEntrancePassenger()
    {
        return entrancePassenger;
    }
    public void setEntranceFreight(Long entranceFreight)
    {
        this.entranceFreight = entranceFreight;
    }

    public Long getEntranceFreight()
    {
        return entranceFreight;
    }
    public void setEntrancePaperCard(Long entrancePaperCard)
    {
        this.entrancePaperCard = entrancePaperCard;
    }

    public Long getEntrancePaperCard()
    {
        return entrancePaperCard;
    }
    public void setEntranceHolidayFree(Long entranceHolidayFree)
    {
        this.entranceHolidayFree = entranceHolidayFree;
    }

    public Long getEntranceHolidayFree()
    {
        return entranceHolidayFree;
    }
    public void setEntranceSubtotal(Long entranceSubtotal)
    {
        this.entranceSubtotal = entranceSubtotal;
    }

    public Long getEntranceSubtotal()
    {
        return entranceSubtotal;
    }
    public void setEntranceCpc(Long entranceCpc)
    {
        this.entranceCpc = entranceCpc;
    }

    public Long getEntranceCpc()
    {
        return entranceCpc;
    }
    public void setEntranceCpcRatio(BigDecimal entranceCpcRatio)
    {
        this.entranceCpcRatio = entranceCpcRatio;
    }

    public BigDecimal getEntranceCpcRatio()
    {
        return entranceCpcRatio;
    }
    public void setEntranceEtc(Long entranceEtc)
    {
        this.entranceEtc = entranceEtc;
    }

    public Long getEntranceEtc()
    {
        return entranceEtc;
    }
    public void setEntranceEtcRatio(BigDecimal entranceEtcRatio)
    {
        this.entranceEtcRatio = entranceEtcRatio;
    }

    public BigDecimal getEntranceEtcRatio()
    {
        return entranceEtcRatio;
    }
    public void setExitPassenger(Long exitPassenger)
    {
        this.exitPassenger = exitPassenger;
    }

    public Long getExitPassenger()
    {
        return exitPassenger;
    }
    public void setExitFreight(Long exitFreight)
    {
        this.exitFreight = exitFreight;
    }

    public Long getExitFreight()
    {
        return exitFreight;
    }
    public void setExitPaperCard(Long exitPaperCard)
    {
        this.exitPaperCard = exitPaperCard;
    }

    public Long getExitPaperCard()
    {
        return exitPaperCard;
    }
    public void setExitHolidayFree(Long exitHolidayFree)
    {
        this.exitHolidayFree = exitHolidayFree;
    }

    public Long getExitHolidayFree()
    {
        return exitHolidayFree;
    }
    public void setExitSubtotal(Long exitSubtotal)
    {
        this.exitSubtotal = exitSubtotal;
    }

    public Long getExitSubtotal()
    {
        return exitSubtotal;
    }
    public void setExitCpc(Long exitCpc)
    {
        this.exitCpc = exitCpc;
    }

    public Long getExitCpc()
    {
        return exitCpc;
    }
    public void setExitCpcRatio(BigDecimal exitCpcRatio)
    {
        this.exitCpcRatio = exitCpcRatio;
    }

    public BigDecimal getExitCpcRatio()
    {
        return exitCpcRatio;
    }
    public void setExitEtc(Long exitEtc)
    {
        this.exitEtc = exitEtc;
    }

    public Long getExitEtc()
    {
        return exitEtc;
    }
    public void setExitEtcRatio(BigDecimal exitEtcRatio)
    {
        this.exitEtcRatio = exitEtcRatio;
    }

    public BigDecimal getExitEtcRatio()
    {
        return exitEtcRatio;
    }
    public void setTotalTrafficFlow(Long totalTrafficFlow)
    {
        this.totalTrafficFlow = totalTrafficFlow;
    }

    public Long getTotalTrafficFlow()
    {
        return totalTrafficFlow;
    }
    public void setGreenChannelCount(Long greenChannelCount)
    {
        this.greenChannelCount = greenChannelCount;
    }

    public Long getGreenChannelCount()
    {
        return greenChannelCount;
    }
    public void setGreenChannelAmount(BigDecimal greenChannelAmount)
    {
        this.greenChannelAmount = greenChannelAmount;
    }

    public BigDecimal getGreenChannelAmount()
    {
        return greenChannelAmount;
    }
    public void setNote(String note)
    {
        this.note = note;
    }

    public String getNote()
    {
        return note;
    }
    public void setImportTime(Date importTime)
    {
        this.importTime = importTime;
    }

    public Date getImportTime()
    {
        return importTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("recordDate", getRecordDate())
            .append("cash", getCash())
            .append("lutongCard", getLutongCard())
            .append("unionpay", getUnionpay())
            .append("handTearTicket", getHandTearTicket())
            .append("totalRevenue", getTotalRevenue())
            .append("cardCompensation", getCardCompensation())
            .append("entrancePassenger", getEntrancePassenger())
            .append("entranceFreight", getEntranceFreight())
            .append("entrancePaperCard", getEntrancePaperCard())
            .append("entranceHolidayFree", getEntranceHolidayFree())
            .append("entranceSubtotal", getEntranceSubtotal())
            .append("entranceCpc", getEntranceCpc())
            .append("entranceCpcRatio", getEntranceCpcRatio())
            .append("entranceEtc", getEntranceEtc())
            .append("entranceEtcRatio", getEntranceEtcRatio())
            .append("exitPassenger", getExitPassenger())
            .append("exitFreight", getExitFreight())
            .append("exitPaperCard", getExitPaperCard())
            .append("exitHolidayFree", getExitHolidayFree())
            .append("exitSubtotal", getExitSubtotal())
            .append("exitCpc", getExitCpc())
            .append("exitCpcRatio", getExitCpcRatio())
            .append("exitEtc", getExitEtc())
            .append("exitEtcRatio", getExitEtcRatio())
            .append("totalTrafficFlow", getTotalTrafficFlow())
            .append("greenChannelCount", getGreenChannelCount())
            .append("greenChannelAmount", getGreenChannelAmount())
            .append("note", getNote())
            .append("importTime", getImportTime())
            .toString();
    }
}
